﻿using Wallpaper.Models.Entities;
using System;
using System.Collections.Generic;

namespace Wallpaper.Data.SeedData
{
    public static class MenuSeedData
    {
        public static List<Menu> GetSeedData()
        {
            // 一级菜单 IDs
            var menu1Id = Guid.NewGuid().ToString();
            var menu2Id = Guid.NewGuid().ToString();
            var menu3Id = Guid.NewGuid().ToString();
            var menu4Id = Guid.NewGuid().ToString();
            var menu5Id = Guid.NewGuid().ToString();

            return new List<Menu>
            {
                // 一级菜单 - 仪表盘
                new Menu
                {
                    Id = menu1Id,
                    Name = "仪表盘",
                    Path = "/dashboard",
                    Icon = "House",
                    Component = "dashboard/index",
                    Sort = 1,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 一级菜单 - 系统管理
                new Menu
                {
                    Id = menu2Id,
                    Name = "系统管理",
                    Icon = "Setting",
                    Sort = 2,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 系统管理子菜单
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "用户管理",
                    Path = "/system/user",
                    Icon = "User",
                    Component = "system/user/index",
                    Sort = 1,
                    ParentId = menu2Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "角色管理",
                    Path = "/system/role",
                    Icon = "UserFilled",
                    Component = "system/role/index",
                    Sort = 2,
                    ParentId = menu2Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "权限管理",
                    Path = "/system/permission",
                    Icon = "Lock",
                    Component = "system/permission/index",
                    Sort = 3,
                    ParentId = menu2Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 一级菜单 - 内容管理
                new Menu
                {
                    Id = menu3Id,
                    Name = "内容管理",
                    Icon = "Document",
                    Sort = 3,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 内容管理子菜单
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "文章列表",
                    Path = "/content/article",
                    Icon = "Reading",
                    Component = "content/article/index",
                    Sort = 1,
                    ParentId = menu3Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "分类管理",
                    Path = "/content/category",
                    Icon = "Collection",
                    Component = "content/category/index",
                    Sort = 2,
                    ParentId = menu3Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "标签管理",
                    Path = "/content/tag",
                    Icon = "PriceTag",
                    Component = "content/tag/index",
                    Sort = 3,
                    ParentId = menu3Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 一级菜单 - 数据统计
                new Menu
                {
                    Id = menu4Id,
                    Name = "数据统计",
                    Icon = "DataLine",
                    Sort = 4,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 数据统计子菜单
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "访问统计",
                    Path = "/statistics/visit",
                    Icon = "View",
                    Component = "statistics/visit/index",
                    Sort = 1,
                    ParentId = menu4Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "销售统计",
                    Path = "/statistics/sales",
                    Icon = "Wallet",
                    Component = "statistics/sales/index",
                    Sort = 2,
                    ParentId = menu4Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 一级菜单 - 系统工具
                new Menu
                {
                    Id = menu5Id,
                    Name = "系统工具",
                    Icon = "Tools",
                    Sort = 5,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },

                // 系统工具子菜单
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "系统日志",
                    Path = "/tools/log",
                    Icon = "List",
                    Component = "tools/log/index",
                    Sort = 1,
                    ParentId = menu5Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "系统监控",
                    Path = "/tools/monitor",
                    Icon = "Monitor",
                    Component = "tools/monitor/index",
                    Sort = 2,
                    ParentId = menu5Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                },
                new Menu
                {
                    Id = Guid.NewGuid().ToString(),
                    Name = "数据备份",
                    Path = "/tools/backup",
                    Icon = "DataAnalysis",
                    Component = "tools/backup/index",
                    Sort = 3,
                    ParentId = menu5Id,
                    IsEnabled = true,
                    IsDeleted = false,
                    CreatedAt = DateTime.Now
                }
            };
        }
    }
}